--- <!-- _footer: https://www.w3schools.com/nodejs/nodejs_http.asp # Módulo HTTP - url A propriedade url armazena o endereço que vem após o nome do domínio, exemplo: http://localhost:8080/verao, a url irá retornar o /verao <figure> <figcaption>exemploURL.js</figcaption> ```js import http from 'http'; http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html'}); res.write(req.url); res.end(); }).listen(8080); ``` </figure> --- <style scoped> pre { font-size: 0.8rem; } p { font-size: 0.8rem; } </style> <!-- _footer: https://developer.mozilla.org/pt-BR/docs/Web/API/URLSearchParams # Módulo HTTP – url Pode-se pegar os parâmetros da url utilizando o URLSearchParams. Link de exemplo: http://localhost:8080/?ano=2017&mes=Julho <figure> <figcaption>meuModulo.js</figcaption> ```js import http from 'http' http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html'}); const param = new URLSearchParams(req.url.split('?')[1]); console.log(param); console.log(param.get('ano')); console.log(param.get('mes')); res.end(req.url); }).listen(8080); ``` </figure>
Com `async/await`, o código fica mais limpo, sem callbacks.
O `connection pool` é uma técnica para gerenciar conexões com o banco de dados de forma mais eficiente. Em vez de abrir e fechar uma conexão para cada consulta, um conjunto de conexões é mantido aberto e é reutilizado. Isso reduz a sobrecarga de estabelecer novas conexões, melhorando a performance e a escalabilidade da aplicação. <br> Criação de um pool de conexões: ```js const pool = mysql.createPool({ host: 'localhost', user: 'root', password: '', database: 'mydb' }); ```